﻿//-----------------------------------------------------------------------
// <copyright file="Enumerations.cs" company="FastNET Services">
//     Copyright (c) 2008-2009. All Rights Reserved.
// </copyright>
// <license>
//     GPLv2
// </license>
// <warranty>
//     THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
//     BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
//     NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
//     DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
//     OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
// </warranty>
//-----------------------------------------------------------------------

namespace GateShift.Services.AccountSystem
{
    /// <summary>
    /// Categories used for the purpose of logging
    /// </summary>
    internal enum AccountLogCategories
    {
        /// <summary>
        /// General Account System Category
        /// </summary>
        AccountSystem = 3000,

        /// <summary>
        /// Category for any login attempt
        /// </summary>
        Authentication = 3001
    }

    /// <summary>
    /// Log Events for AccountSystem
    /// </summary>
    internal enum AccountLogEventID
    {
        /// <summary>
        /// Login Username Request process starting
        /// </summary>
        LoginUserNameRequest = 1,

        /// <summary>
        /// Login Username Request process ending
        /// </summary>
        LoginUserNameResponse = 2,

        /// <summary>
        /// Verify Password Request process starting
        /// </summary>
        VerifyPasswordRequest = 3,

        /// <summary>
        /// Verify Password Request process ending
        /// </summary>
        VerifyPasswordResponse = 4,

        /// <summary>
        /// Event for an account being locked out
        /// </summary>
        PasswordUserLocked = 5,

        /// <summary>
        /// Event for a token being issued to a client
        /// </summary>
        TokenIssued = 6,

        /// <summary>
        /// Event for a token being renewed
        /// </summary>
        TokenRenewed = 7,

        /// <summary>
        /// Token Renewal Request process starting
        /// </summary>
        TokenRenewalRequest = 8,

        /// <summary>
        /// Event for a token expiring
        /// </summary>
        TokenExpired = 9,

        /// <summary>
        /// Event for responding to an account logout
        /// </summary>
        LogoutResponse = 10
    }
}
